package com.alibaba.citrus.cr.sales.plan.repository;

import com.alibaba.citrus.cr.sales.plan.dto.api.request.BatchQuerySalesPlanScItemRequest;
import com.alibaba.citrus.cr.sales.plan.dto.api.request.SalesPlanScItemPageQueryRequest;
import com.alibaba.citrus.cr.sales.plan.dto.api.request.SalesPlanScItemQueryRequest;
import com.alibaba.citrus.cr.sales.plan.sdo.SalesPlanScItemSDO;
import com.alibaba.cz.base.tool.page.PageResult;
import com.epoch.app.crplatformenhance.model.dto.ScItemSDO;

import java.util.List;

/**
 * @author wangyibing
 */
public interface SalesPlanScItemRepository {

    SalesPlanScItemSDO querySalesPlanScItem(SalesPlanScItemQueryRequest planQueryRequest);

    String createSalesPlanScItem(SalesPlanScItemSDO planCreateRequest);

    PageResult<List<SalesPlanScItemSDO>> pageQuerySalesPlanScItemList(SalesPlanScItemPageQueryRequest planPageQueryRequest);

    Integer editSalesPlanScItem(SalesPlanScItemSDO productPlanEditRequest);

    ScItemSDO queryScItemById(String scItemId);

    /**
     * 根据scItems+status批量查询
     *
     * @param batchQuerySalesPlanScItemRequest
     * @return
     */
    List<SalesPlanScItemSDO> batchQuerySalesPlanScItem(BatchQuerySalesPlanScItemRequest batchQuerySalesPlanScItemRequest);


    Integer batchUpdateStatus(SalesPlanScItemSDO batchUpdateScItem);
}
